package com.qijian.maindata.domain;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qijian.common.annotation.Excel;
import com.qijian.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.util.Date;

/**
 * 量具台账对象 main_instrument_ledger
 *
 * @author qijian
 * @date 2024-01-22
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ToString
@TableName("main_instrument_ledger")
public class InstrumentLedger extends BaseEntity {
    private static final long serialVersionUID = 1L;

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "id")
    private Long id;

    @Excel(name = "Name\n" + "器具名称")
    @ApiModelProperty(value = "器具名称")
    private String name;

    @Excel(name = "Type/Size\n" + "型号/规格")
    @ApiModelProperty(value = "型号/规格")
    private String type;

    @Excel(name = "NO.\n" + "本厂编号")
    @ApiModelProperty(value = "本厂编号")
    private String number;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "The date of  checking\n" + "检定日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "检定日期")
    private Date checkDate;

    @Excel(name = "仓库管理人员")
    @ApiModelProperty(value = "仓库管理人员")
    private String stockman;


    @ApiModelProperty(value = "仓库管理人员Id")
    private Long stockmanId;

    @Excel(name = "conduct\n" + "管理方式")
    @ApiModelProperty(value = "管理方式")
    private String manager;

    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "管理人id")
    private Long managerId;

    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "The next date of  checking下次检定日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "下次检定日期")
    private Date nextCheckDate;

    @Excel(name = "检定方式")
    @ApiModelProperty(value = "检定方式")
    private String verifyMethod;

    @ApiModelProperty(value = "备注")
    private String remark;

}
